package com.youlai.boot.factory.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.youlai.boot.factory.model.entity.StyleProcess;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.youlai.boot.factory.model.query.StyleProcessQuery;
import com.youlai.boot.factory.model.vo.StyleProcessVO;
import io.lettuce.core.dynamic.annotation.Param;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 款号工序关联Mapper接口
 *
 * @author youlaitech
 * @since 2025-10-06 11:07
 */
@Mapper
public interface StyleProcessMapper extends BaseMapper<StyleProcess> {

    /**
     * 获取款号工序关联分页数据
     *
     * @param page 分页对象
     * @param queryParams 查询参数
     * @return {@link Page<StyleProcessVO>} 款号工序关联分页列表
     */
    Page<StyleProcessVO> getStyleProcessPage(Page<StyleProcessVO> page, StyleProcessQuery queryParams);



    /**
     * 获取款号工序关联分页数据-关联工序表
     *
     * @param page 分页对象
     * @param queryParams 查询参数
     * @return {@link Page<StyleProcessVO>} 款号工序关联分页列表
     */
    Page<StyleProcessVO> getStyleProcessJoinPage(Page<StyleProcessVO> page, StyleProcessQuery queryParams);


    /**
     * 批量新增款号工序关联
     *
     * @param styleProcessList 款号工序关联实体列表
     * @return 插入记录数
     */
    int insertBatch(@Param("styleProcessList") List<StyleProcess> styleProcessList);

}
